// 定义一个函数
var add = (a, b) => a + b;

// 定义可变参数的函数
var calc = (ename, baseSalary, [bonus1 = 0, bonus2 = 0, bonus3 = 0]) => 
  print("${ename} 的总工资是: ${baseSalary + bonus1 + bonus2 + bonus3}");

// 定义命名参数
var order = ({zhushi="香辣鸡腿堡", xiaochi = "薯条", yinliao = "可乐"}) => {
  print('''您点的套餐是: 
    主食: $zhushi
    小吃: $xiaochi
    饮料: $yinliao
  ''')
};

// 程序入口函数
// 主函数
void main() {
  print(add(3, 5)); // 8
  print(add("hello", "world")); // helloworld

  // 调用可变参数的函数
  calc("eric", 6000);
  calc("zhangsan", 6000, 1000);
  calc("lisi", 6000, 1000, 2000);
  calc("wangwu", 6000, 1000, 2000, 3000);

  // 调用命名参数
  order();
  order(
    zhushi: "深海鳕鱼堡"
  );
  order(
    zhushi: "深海鳕鱼堡",
    yinliao: "K Coffie"
  );

  order(
    zhushi: "深海鳕鱼堡",
    xiaochi: "劲爆鸡米花",
    yinliao: "K Coffie"
  );
}
